package netty.myDecoder;

import io.netty.buffer.ByteBuf;
import io.netty.channel.ChannelHandlerContext;
import io.netty.handler.codec.ByteToMessageDecoder;

import java.util.List;

/**
 * @Description TODO
 * @Author 李龙平
 * @Date 2020/10/13 17:23
 */
public class MyByteToLongDecoder extends ByteToMessageDecoder {
    /**
     * @description //todo
     * @param channelHandlerContext 上下文
     * @param byteBuf 入站的byteBuf
     * @param list 集合 将解码后的数据发送给下一个handler
     * @author 洛秋y
     * @date 2020/10/13
     */
    @Override
    protected void decode(ChannelHandlerContext channelHandlerContext, ByteBuf byteBuf, List<Object> list) throws Exception {
        //因为 long是8个字节
        if (byteBuf.readableBytes() > 8) {
            list.add(byteBuf.readLong());
        }
    }
}
